package cn.tedu.medicalappointmentsystemk.dao.persist.repository;


import cn.tedu.medicalappointmentsystemk.pojo.bo.DoctorSelectBO;
import cn.tedu.medicalappointmentsystemk.pojo.bo.DoctorSelectByDoctorIdBO;
import cn.tedu.medicalappointmentsystemk.pojo.param.DoctorUpdateParam;
import cn.tedu.medicalappointmentsystemk.pojo.po.DoctorPO;
import com.github.pagehelper.Page;

import java.util.List;

public interface DoctorRepository {

    Integer addNew(DoctorPO po);

    Page<DoctorSelectBO> select();

    DoctorPO selectById(Long id);

    Integer deleteById(Long id);

    Integer update(DoctorUpdateParam param);

    Long selectIdByUserId(Long userId);

    DoctorSelectByDoctorIdBO selectDoctorByDoctorId(Long id);

    List<DoctorSelectBO> selectByNickname(String nickname);

    Integer selectTotal();

    Page<DoctorSelectBO> searchLastMonth();

    Page<DoctorSelectBO> searchLastWeek();

    Page<DoctorSelectBO> searchToday();
}
